package com.masq.agencija.pages;

import org.apache.tapestry5.annotations.InjectPage;
import org.apache.tapestry5.annotations.OnEvent;
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.annotations.SessionState;
import org.apache.tapestry5.ioc.annotations.Inject;

import com.masq.agencija.interfaces.Stan;
import com.masq.agencija.interfaces.AuxClient;
import com.masq.agencija.pages.StanDetails;
import com.masq.agencija.pages.UnosRenta;
import com.masq.agencija.pages.Login;
import com.masq.agencija.service.Stanovi;

public class PregledStan {
	
		@Inject
		@Property
		private Stanovi stanovi;

		@Property
		private Stan currentStan;

		@InjectPage
		private StanDetails stanDetailsPage;

		@InjectPage
		private UnosRenta unosRenta;
		
		@OnEvent(component = "stanDetailsLink")
		Object onShowDetails(String adresa) {
			Stan izabraniStan = stanovi.retrieveSingleStan(adresa);
			stanDetailsPage.setIzabraniStan(izabraniStan);
			return stanDetailsPage;
		}
		
		@OnEvent(component = "entryStanLink")
		Object onStanLink(String adresa) {
			unosRenta.setRentStan(adresa);
			return unosRenta;
		}
		
		@SessionState
		private AuxClient user;

		private boolean userExists;
		
		public AuxClient getUser() {
			return user;
		}
		
		Object onActivate() {
			if (!userExists) return Login.class;
			return null;
		}


}

